package 炫彩常量类

// 窗口事件
// XWM_

const (
	X窗口事件_消息过程             X窗口事件 = 0x7000 + 2  // 窗口消息过程
	X窗口事件_炫彩定时器             X窗口事件 = 0x7000 + 5  // 炫彩定时器, 非系统定时器, 注册消息 XWM_TIMER 接收
	X窗口事件_置焦点         X窗口事件 = 0x7000 + 9  // 窗口事件_置焦点元素. 指定元素获得焦点
	X窗口事件_托盘_图标             X窗口事件 = 0x7000 + 10 // 托盘图标事件
	X窗口事件_菜单_弹出           X窗口事件 = 0x7000 + 11 // 菜单弹出
	X窗口事件_菜单_弹出窗口       X窗口事件 = 0x7000 + 12 // 菜单弹出窗口
	X窗口事件_菜单_选择          X窗口事件 = 0x7000 + 13 // 菜单选择
	X窗口事件_菜单_退出            X窗口事件 = 0x7000 + 14 // 菜单退出
	X窗口事件_菜单_绘制背景 X窗口事件 = 0x7000 + 15 // 绘制菜单背景, 启用该功能需要调用 xc.XMenu_EnableDrawBackground
	X窗口事件_菜单_绘制项        X窗口事件 = 0x7000 + 16 // 绘制菜单项事件, 启用该功能需要调用 xc.XMenu_EnableDrawItem
	X窗口事件_窗格_浮动           X窗口事件 = 0x7000 + 18 // 浮动窗格
	X窗口事件_窗口_绘制完成            X窗口事件 = 0x7000 + 19 // 窗口绘制完成消息
	X窗口事件_窗口_绘制完成并显示        X窗口事件 = 0x7000 + 20 // 窗口绘制完成并且已经显示到屏幕
	X窗口事件_框架窗口_码头弹出窗格           X窗口事件 = 0x7000 + 21 // 框架窗口码头弹出窗格, 当用户点击码头上的按钮时, 显示对应的窗格, 当失去焦点时自动隐藏窗格

	// 浮动窗口拖动, 用户拖动浮动窗口移动, 显示停靠提示.
	//
	// hFloatWnd: 拖动的浮动窗口句柄.
	//
	// hArray: HWINDOW array[6], 窗格停靠提示窗口句柄数组, 有6个成员, 分别为:[0]中间十字, [1]左侧, [2]顶部, [3]右侧, [4]底部, [5]停靠位置预览.
	X窗口事件_浮动窗口拖动 X窗口事件 = 0x7000 + 22
	X窗口事件_框架窗口_主视图坐标改变 X窗口事件 = 0x7000 + 24 // 框架窗口主视图坐标改变, 如果主视图没有绑定元素, 那么当坐标改变时触发此事件
)

// 窗口事件
type X窗口事件 uint32

const (
	X窗口事件_窗口_绘制           X窗口事件 = 15     // 窗口绘制消息
	X窗口事件_窗口_关闭           X窗口事件 = 16     // 窗口关闭消息.
	X窗口事件_窗口_销毁         X窗口事件 = 2      // 窗口销毁消息.
	X窗口事件_窗口_非客户区销毁       X窗口事件 = 130    // 窗口非客户区销毁消息. 在 WM_DESTROY 之后.
	X窗口事件_鼠标_移动       X窗口事件 = 512    // 窗口鼠标移动消息.
	X窗口事件_鼠标_左键按下     X窗口事件 = 513    // 窗口鼠标左键按下消息
	X窗口事件_鼠标_左键弹起       X窗口事件 = 514    // 窗口鼠标左键弹起消息.
	X窗口事件_鼠标_右键按下     X窗口事件 = 516    // 窗口鼠标右键按下消息.
	X窗口事件_鼠标_右键弹起       X窗口事件 = 517    // 窗口鼠标右键弹起消息.
	X窗口事件_鼠标_左键双击   X窗口事件 = 515    // 窗口鼠标左键双击消息.
	X窗口事件_鼠标_右键双击   X窗口事件 = 518    // 窗口鼠标右键双击消息.
	X窗口事件_鼠标_中键按下     X窗口事件 = 519    // 窗口鼠标中键按下消息.
	X窗口事件_鼠标_中键弹起       X窗口事件 = 520    // 窗口鼠标中键弹起消息.
	X窗口事件_鼠标_滚轮滚动      X窗口事件 = 522    // 窗口鼠标滚轮滚动消息.
	X窗口事件_鼠标_按下第一个或第二个X按钮     X窗口事件 = 523    // 鼠标按下第一个或第二个 X 按钮.
	X窗口事件_鼠标_弹起第一个或第二个X按钮       X窗口事件 = 524    // 鼠标弹起第一个或第二个 X 按钮.
	X窗口事件_鼠标_双击第一个或第二个X按钮   X窗口事件 = 525    // 鼠标双击第一个或第二个 X 按钮.
	X窗口事件_鼠标_非客户区按下第一个或第二个X按钮   X窗口事件 = 171    // 鼠标按下第一个或第二个 X 按钮.
	X窗口事件_鼠标_非客户区弹起第一个或第二个X按钮     X窗口事件 = 172    // 鼠标弹起第一个或第二个 X 按钮.
	X窗口事件_鼠标_非客户区双击第一个或第二个X按钮 X窗口事件 = 173    // 鼠标双击第一个或第二个 X 按钮.
	X窗口事件_窗口_退出移动或调整大小模式循环改    X窗口事件 = 562    // 窗口退出移动或调整大小模式循环改，详情参见MSDN.
	X窗口事件_窗口_鼠标进入      X窗口事件 = 673    // 窗口鼠标进入消息
	X窗口事件_窗口_鼠标离开      X窗口事件 = 675    // 窗口鼠标离开消息.
	X窗口事件_窗口_大小改变            X窗口事件 = 5      // 窗口大小改变消息.
	X窗口事件_窗口_定时器           X窗口事件 = 275    // 窗口定时器消息.
	X窗口事件_窗口_获得焦点        X窗口事件 = 7      // 窗口获得焦点.
	X窗口事件_窗口_失去焦点       X窗口事件 = 8      // 窗口失去焦点.
	X窗口事件_键盘_按键         X窗口事件 = 256    // 窗口键盘按键消息.
	X窗口事件_键盘_按键弹起           X窗口事件 = 257    // 窗口键盘按键弹起消息.
	X窗口事件_键盘_系统按键按下      X窗口事件 = 260    // 当用户按下F10键（激活菜单栏）或按住ALT键然后按下另一个键时，发布到具有键盘焦点的窗口。当当前没有窗口具有键盘焦点时，也会发生这种情况;在这种情况下， WM_SYSKEYDOWN 消息被发送到活动窗口。接收消息的窗口可以通过检查lParam参数中的上下文代码来区分这两个上下文.
	X窗口事件_键盘_系统按键弹起        X窗口事件 = 261    // 当用户释放按住 Alt 键时按下的键时，使用键盘焦点发布到窗口。 当当前没有窗口具有键盘焦点时，也会发生这种情况;在这种情况下， WM_SYSKEYUP 消息将发送到活动窗口。 接收消息的窗口可以通过检查 lParam 中的上下文代码来区分这两个上下文.
	X窗口事件_鼠标_捕获改变  X窗口事件 = 533    // 窗口鼠标捕获改变消息.
	X窗口事件_鼠标_设置光标       X窗口事件 = 32     // 窗口设置鼠标光标.
	X窗口事件_字符            X窗口事件 = 258    // 窗口字符消息.
	X窗口事件_拖动文件到窗口       X窗口事件 = 563    // 拖动文件到窗口.
	X窗口事件_键盘_按下热键          X窗口事件 = 0x0312 // 当用户按下 wapi.RegisterHotKey 函数注册的热键时发布。消息放置在与注册热键的线程关联的消息队列的顶部.
	WM_SETICON         X窗口事件 = 0x0080 // 设置窗口图标的消息.
	WM_ACTIVATE        X窗口事件 = 6      // 窗口激活消息, 发送到正在激活的窗口和正在停用的窗口.
	WM_MOVE            X窗口事件 = 3      // 窗口移动消息.
	WM_MOVING          X窗口事件 = 534    // 当用户正在移动窗口时，该消息会被发送到窗口.
	WM_GETMINMAXINFO   X窗口事件 = 36     // 获取窗口最小最大尺寸信息.
	WM_QUIT            X窗口事件 = 0x0012 // 应用程序退出消息.
	WM_KEYFIRST        X窗口事件 = 0x0100 // 按键消息的第一个值.
	WM_MOUSEFIRST      X窗口事件 = 0x0200 // 鼠标消息的第一个值.
	WM_KEYLAST         X窗口事件 = 0x0109 // 按键消息的最后一个值.
	WM_MOUSELAST       X窗口事件 = 0x020E // 鼠标消息的最后一个值.
)
